EFI/ARM: don't treat EfiBootServices{Code,Data} as normal RAM under /mapbs
authorJan Beulich <jbeulich@suse.com>
Thu, 11 Jun 2015 09:58:29 +0000 (11:58 +0200)
committerJan Beulich <jbeulich@suse.com>
Thu, 11 Jun 2015 09:58:29 +0000 (11:58 +0200)
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
xen/arch/arm/efi/efi-boot.h

index 2a7aa1370767ca98b53c58ff28a73e725229ea4a..6a12d91c18bd837e64c0827ca61858f85d2b8f1d 100644 (file)
@@ -132,9 +132,10 @@ static EFI_STATUS __init efi_process_memory_map_bootinfo(EFI_MEMORY_DESCRIPTOR *
 
     for ( Index = 0; Index < (mmap_size / desc_size); Index++ )
     {
-        if ( desc_ptr->Type == EfiConventionalMemory
-             || desc_ptr->Type == EfiBootServicesCode
-             || desc_ptr->Type == EfiBootServicesData )
+        if ( desc_ptr->Type == EfiConventionalMemory ||
+             (!map_bs &&
+              (desc_ptr->Type == EfiBootServicesCode ||
+               desc_ptr->Type == EfiBootServicesData)) )
         {
             if ( i >= NR_MEM_BANKS )
             {